1. Field of the Invention
This invention relates to clock forwarded communication systems.
2. Description of the Related Art
A clock forwarded interface is becoming more common in systems for communication between various devices within the system. Clock forwarded interfaces may typically offer higher speed, higher bandwidth communication among the devices as compared to traditional bus architectures. A clock forwarded interface generally includes point-to-point transfers of data between a sender and a receiver. The sender provides a clock, referred to as a forward clock, to the receiver that causes the receiver to capture the transmitted data. The sender synchronizes the transmitted data to the forwarded clock. The receiver may capture the data responsive to the forward clock and then synchronize the data to its own internal clock.
In a clock forwarded system, the clock provided by the sender and the receiver clock are typically derived from the same external clock source. Therefore, both clocks are frequency matched. However, due to such factors as internal component gate delays and clock trace length mismatches, the forwarded clock and the internal receiver clock may be out of phase with each other. This is referred to as static phase mismatch. Other factors, such a temperature variations, may cause the phase relationship to change during operation. This is referred to as dynamic phase mismatch. Since the phase relationship between the two clocks is unknown, the data is typically buffered at the receiving device using a first-in, first-out (FIFO) buffer. The FIFO buffer typically uses a write pointer and a read pointer which are clocked by the forward clock and the internal clock, respectively. Data received on the clock-forwarded interface is written into the FIFO buffer using the write pointer and read from the FIFO buffer using the read pointer. However, due to the phase difference between the clocks, the possibility of data corruption exists by reading data from the FIFO buffer before that data is stable from the write.